home *** CD-ROM | disk | FTP | other *** search
- /* OpalBrot.doc V2.00 Feb 23, 1993
-
- Jim Boros, Borotec, Inc.
-
-
- */
-
-
-
- INTRO:
-
- OpalBrot is a fractal plotting program specifically designed for
- use on an Amiga equipped with an OpalVision display module. It came
- to be as during a recent major snowstorm in Cleveland, I was looking
- at the OpalVision developer files, experimenting and looking for some
- 'way cool' graphics hack to show off the setup. I came upon a file
- called "render" which was the code to render to OpalVision (OV) from
- a 3-D program. I liked the test of it, though it does jump unless
- rendering to a real screen viewing OpalVision only. I had played
- around with MandelBrot equations earlier, so I took the basic part
- out of it and tied it into the renderer. It worked. A minute after
- starting it, I saw the full Mandelbrot pattern appear in fine detail
- in the glory of OpalVision's 24 bit display. This program and source
- has been released as "obrotold.lzh".
- Encouraged by this, and somewhat dissatisfied with other fractal
- programs (don't support '882, too few colors, etc), I decided to make
- this a more usable program, namely by allowing zooming into an area
- of choice, and providing several options, and saving preset points
- and pictures. This took considerable effort but is worth it. Here
- is the result thereof. It is by no means complete, many more features
- will be added.
- I won't get into fractal theory, suffice it to say that it makes
- graphics that often mimic nature. They are not square or rectangular,
- but not utterly random either, containing some type of order. Detail
- is almost infinite, as you can zoom in to very file detain, in the
- order of millions, and still get unique and detailed views. The scale
- could be almost like zooming from an entire view of a large nation
- (say USA, Australia, Canada, Russia, China, etc) down to an 8x10"
- ( 200 X 300mm if youre in the other four nations) area or even smaller.
- Watch the Magnification feature and see. Explore freely, save interesting
- coordinates on disk for future reference. There are many pieces of
- eye candy to be gobbled up here.
-
-
- REQUIREMENTS:
-
- ----> IMPORTANT: MAKE SURE YOU HAVE THE FOLLOWING BEFORE USING:
-
-
- AMIGA 2000,3000 OR 4000 computer with
-
- OPALVISION display adapter
-
- 68020 or better CPU.
-
- 68881 or 68882 FPU ( or full blown 68040 chip).
-
- WorkBench 2.0 and KickStart V37 or higher.
-
-
-
- If you do not have any of these, obtain them. I may make a version
- with lesser CPU and FPU requirements for a nominal fee. This program
- is designed for maximum perfomance. Do NOT try to run this without
- the 68020 and 881, it WILL GURU.
- OpalBrot does NOT need alot of memory or a hard drive. 1Meg each
- of chip and fast should suffice.
-
- DESCRIPTION:
-
- OpalBrot opens up two screens. First, it opens an Hi-Res interlaced
- Intuition screen on the Amiga with some overscan, and then opens an 8
- plane, overscanned, interlaced, Hi-Res OpalVision screen under the
- Intuition screen. This is for using the mouse for zooming. The user
- interface is not real colorful as yet, but the results of the rendering
- will make up for this. An 8 bit screen has been chosen since there
- are relatively few times over 256 colors will be beneficial. The screen
- will be a real screen in chip ram normally (another reason for 8 planes),
- and consumes approximately 350K of chip RAM. It will open in fast RAM
- as a virtual screen if not even that is available(haven't had that happen
- yet even with 1 Meg chip RAM).
- Each color represents the number of iterations of a comples function.
- This number is limited by the maximum iterations parameter set with F1
- thru F10 keys. There can only be as many colors as iterations. And
- 256 is a good maximum, a lower number is good for previewing and larger
- for detail in deep areas. If the maximum is reached for any pixel it
- will be rendered black(color 0). Notice that rendering is slower where
- there are large areas of black pixels. It runs in a raster scan mode,
- similar to receiving pictures from space probes.
- The math functions are FPU instructions for 68881 or 68882 chips,
- which can be over 200 times as fast as a stock Amiga 2000. The precision
- is double, and this will retain accuracy at very high magnifications. I
- have not noticed much speed gain using the shorter float types.
- The graphics resolution is the maximum displayable on OpalVision, at
- least in NTSC, at 736 X 476. At this, an average render takes about ten
- minutes ( I remember 45 minutes for a 320X200 on my A1000). There is a
- mode to render faster, 16X in fact, this renders every fourth pixel in
- X and Y, and copies to other pixels, resulting similar to a 4X4 mosaic.
- This mode is good for navigating and quick checking. Use full resolution
- when confident of settings for a final draft.
- There are currently three fractal modes. Mandelbrot, Julia and
- "Monster". Julia uses the seed variables, this is set based
- on the full scale mandelbrot set. Seeding in the colorful areas gives
- best results, while seeding in the outlining areas gives sparse, wispy
- apperance. The default values will yield decent results so seeding is
- not absolutely necessary. Monster gives the apperance of reptile or
- dragon wings. It uses the X seed value. Too low gives a black screen.
- The status display is a rectangle at the bottom of the overlay
- screen. Hitting S or doing most operations will display the status and
- parameters of the fractal. Error and other messages are displayed here
- plus some basic help. Watch this area.
-
-
-
- USING OPALBROT:
- ---- IF YOU DON'T HAVE AT LEAST A 68020 & MATH CHIP STOP NOW -----------
-
- STARTING:
- OK enough details, lets get going. OpalBrot can be started from CLI
- by typing "opalbrot", or from WorkBench by hitting the icon. NO parameters
- are put on the command line. In Workbench, a small window is added
- for some message output at startup on the Workbench screen. The user
- may need to close this on exit.
-
- RENDERING:
- You will see a dark screen with a message. Most all operations are
- initiated with a menu or keyboard. No gadgets. To get started, pick
- either Render Full Res or Render 1/4 Res. You'll see the full mandelbrot
- set in about 10 min/45 sec respectively. To zoom in, select zoom from
- menu, place the mouse on upper left corner, press button, drag to
- lower right corner and release. Note that the width and height must
- be 8 pixels and the direction is important else an error message will
- pop up. Hit any key if you change your mind.
- Selecting stop render will stop it at the end of the line, as will
- hitting 'P' on the keyboard. Rendering may be resumed at this point
- by starting again, or resetting Y to start from scratch. If a zoom or
- shift is done, it will start from scratch. It may take several seconds
- to stop if a complex area is being done. This is a trade off as constant
- checking will slow down rendering.
- After a few seconds of rendering, the Amiga display will disappear,
- and the OpalVision display appear. Rendering will be smoother if the
- chip ram screen is opened successfully. When rendering is complete, the Amiga overlay will reappear and tell you its
- done and how long it took. Hit 'D' to view in Opal Only, and 'F' to
- return to overlay.
-
- SAVING:
-
- Options are in the menu to save and load presets. These are the points
- and parameters at which rendering takes place, and NOT the picture. If
- you find a really neat area, save it, and load another time to return.
- There is no limit to the number that may be saved. These options are
- on the left menu and should be self explanatory. These files end with
- .obp and are only a few hundred bytes long.
- The screen can be saved by saving as IFF. This generates an IFF
- palette mapped 8 plane picture. It should load well into OpalPaint,
- or even Deluxe Paint AGA. These files are relatively compact, usually
- just over 100K. JPEG is NOT recommended at this time, though implimented.
- JPEG does not perform 8 bit palette maps well, and the resulting file
- is often larger than the IFF file with some loss of quality. The
- quality is preset to 95.
-
-
- OPTIONS:
-
- On the other menu options, zooming has been covered, moving field
- allows movement without any magnification changed. Good if your desired
- object goes off one side of the screen. Select this option and click
- where you want center to be.
- Fractal mode will move to the next mode, of Mandelbrot, Julia, or
- Monster. The choices are not directly accessable, but will cycle,
- and the current choice will be displayed in the status area.
- Julia and Monster use the seed, although default will do, select
- seed from menu, and click mouse on screen to set.
- Palette is not fully implimented at this point either. It does offer
- several choices of color scheme, and results can still be changed in
- a paint program. Select this to step through the choices. Some will have
- closely spaced colors, and will not show up 'shallow' brots well, others
- have totally contrasting colors every few registers. The palettes are
- calculated by constantly adding numbers to each component, and taking
- the 8 least significant bits. This follows a sawtooth pattern, and
- gives an appropriate look for this type of program. Do expect this area
- to be enhanced in the future.
- The maximum iteration count is set from the function keys. F1 is
- 16, f2=32. Recommended is F5 or 256. Higher numbers give more detail
- but take longer, especially in black areas. F10 gives a maximal 8192
- and each key is double the count of the one below it. F and D keys
- move to Opal and Overlay displays respectively. S prints the status,
- and the parameters are labelled. A will cause two lines to be rendered
- in the OpalVision display when a zoom is done. This is to check align-
- ment of the overlay. They should be concurrent, if a major difference
- is seen, try adjusting the overscan in prefs. It has been fixed to
- cover all settings but not fully tested.
-
-
- LEGAL:
-
- OpalBrot is copyright ⌐ 1993, Borotec, Inc. It is now freely
- distributable provided all files and documentation in this archive is
- kept intact and not modified. Distribution is especially encouraged
- on the Opal support BBS, BIX, and Fred Fish. No liability is assumed
- for any damage to data or hardware or any consequences arising out of
- use of OpalBrot. This includes any negative health effects including,
- but not limited to, epileptic seizures.
- On this release (2.00) no set shareware fee is asked. Future versions
- will be either shareware or commercial, but be econimically priced.
- Users who do send a contribution over $5.00 will get a disk mailed to
- them containing an updated version of OpalBrot, some other utilities, and
- some nice JPEG pictures.
-
-
- FUTURE PLANS: ( To-Do List)
-
- This depends much on public response and support. Some of the
- Items planned are:
-
-
- - More Fractal modes. Suggestions accepted, algorithm must return
- a point for each pixel, and be fed x and y double floating point
- values. Other constants and variables may be used. I'd like to
- see about eight in the next release.
-
- - Better Palette control options.
-
- - Fully impliment zoom out, right now it returns to default values,
- may be accompanied by multiple undo or retrace levels.
-
- - Optional use of 16 or 24 bit modes. Would be useful only on high
- iteration work, and increase file and memory size.
-
- - AGA version, port this to run on a 4000 or 1200 in 256 colors.
- Will need a 4000 first, donations cheerfully accepted.
-
- - Color Cycling.
-
- - Possible smaller screen for 368x240 res for video.
-
- - Path defining and batch processing for animations.
-
- - With more power CPUs, real time rendering on small part of screen
- controlled by joystick or mouse.
-
- - User supplied ideas.
-
-
-
-
- TRADEMARKS:
-
- Lets acknowledge, support and salute some of the other fine products
- associated with this file:
-
- AMIGA IS A TRADEMARK OF COMMODORE-AMIGA, INC.
- WORKBENCH " " " "
- KICKSTART " " " "
- 68020,68030,68040, 68881,68882 ARE TRADEMARKS OF MOTOROLA, INC.
- BARS & PIPES IS BY BLUE RIBBON SOUNDWORKS
- OPALVISION AND LIBRARY BY OPAL TECHNOLOGY AND CENTAUR
- AND RENDERER.C ORIGINALLY WRITTEN BY MARTIN BOYD THEREOF
- DELUXE PAINT AGA BY ELECTRONIC ARTS
-
- OpalBrot was compiled and this document edited with SAS Amiga C
- Compiler V 6.2 by SAS Industries, Inc.
-
- CONTACT:
-
- For suggestions, questions, and bug reports, and contributions, contact
- me either by using the OpalVision Support BBS ( JimB), or BIX ( jboros),
- or by (paper) mail care of Borotec, PO Box 17149, Euclid, Ohio 44117.
- Also, we have one commercial product out, MIDI Math that lets you
- hear math equations and fractals played out in a musical composition.
- only $29.95 PPD USA and Canada. A version for Bars & Pipes is being
- developed and is in beta test. Also, we do contract programming on
- Amiga, IBM compatibles, and on embedded controllers. Contact us about
- your programming needs.
-
-
- - Jim Boros, Borotec, Inc.
-
-